<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <style>
    .progress-ring {
      width: 100px;
      height: 100px;
      position: relative;
      display: inline-block;
    }

    .progress-ring circle {
      fill: transparent;
      stroke-width: 10;
      stroke-linecap: round;
      transform-origin: center;
    }

    .progress-ring__track {
      stroke: #ddd;
    }

    .progress-ring__progress--color1 {
      stroke: #ff0000; /* 第一种颜色 */
      stroke-dasharray: 0 100;
      animation: progress-color1 2s linear forwards;
    }

    .progress-ring__progress--color2 {
      stroke: #00ff00; /* 第二种颜色 */
      stroke-dasharray: 0 100;
      stroke-dashoffset: 100;
      animation: progress-color2 2s 1s linear forwards;
    }

    .progress-ring__progress--color3 {
      stroke: #0000ff; /* 第三种颜色 */
      stroke-dasharray: 0 100;
      stroke-dashoffset: 200;
      animation: progress-color3 2s 2s linear forwards;
    }

    @keyframes progress-color1 {
      to {
        stroke-dasharray: 100 0;
      }
    }

    @keyframes progress-color2 {
      to {
        stroke-dasharray: 100 0;
        stroke-dashoffset: 100;
      }
    }

    @keyframes progress-color3 {
      to {
        stroke-dasharray: 100 0;
        stroke-dashoffset: 200;
      }
    }
  </style>
</head>
<body>
  <div class="progress-ring">
    <svg viewBox="0 0 100 100">
      <circle class="progress-ring__track" r="45" cx="50" cy="50" />
      <circle class="progress-ring__progress--color1" r="45" cx="50" cy="50" />
      <circle class="progress-ring__progress--color2" r="45" cx="50" cy="50" />
      <circle class="progress-ring__progress--color3" r="45" cx="50" cy="50" />
    </svg>
  </div>
</body>
</html>